﻿package com.toncen.samepms.system.domain;

import java.util.Date;

import com.toncen.samepms.common.AbstractDomain;
import com.toncen.samepms.common.IOperatingUnlogable;
import com.sky.dataimport.DynamicCellDataCell;
import com.sky.dataimport.DynamicCellDataRow;
import com.sky.dataimport.DynamicRowDataCell;
import com.sky.dataimport.DynamicRowDataRow;
import com.sky.dataimport.StaticDataCell;
import com.sky.dataimport.StaticDataRow;
import com.sky.dataimport.datatype.DateDataType;
import com.sky.dataimport.datatype.IntegerDataType;
import com.sky.dataimport.formater.UtilDateDataFormater;
 
/**
 * 描述：操作日志表SYSTEM_OPERATING_LOG的domain文件
 * 
 * @author zq 
 */
@DynamicRowDataRow(title = "动态行操作日志", sheetIndex = 1, startRowIndex = 2, startCellIndex = 1, inserted = false)
@DynamicCellDataRow(title = "动态列操作日志", sheetIndex = 1, startRowIndex = 2, startCellIndex = 2, inserted = false)
@StaticDataRow(title = "静态行列操作日志", sheetIndex = 1)
public class OperatingLog extends AbstractDomain implements IOperatingUnlogable{
	/**
	 * 序列号
	 */
	private static final long serialVersionUID = 1341464897554L;
	
	/**
	 * 操作用户
	 */ 
	@StaticDataCell(rowIndex = 1, cellIndex = 1, title = "操作用户")
	@DynamicRowDataCell(cellIndex = 1,  title = "操作用户", require = false)
	@DynamicCellDataCell(rowIndex = 1,  title = "操作用户", require = false)
	@IntegerDataType(msg = "必须为整数类型")
	private  long userId; 	 
    
	/**
	 * 操作时间
	 */ 
	@StaticDataCell(rowIndex = 2, cellIndex = 2, title = "操作时间")
	@DynamicRowDataCell(cellIndex = 2, title = "操作时间", formater = UtilDateDataFormater.class, option = "yyyy-MM-dd", require = false)
	@DynamicCellDataCell(rowIndex = 2, title = "操作时间", formater = UtilDateDataFormater.class, option = "yyyy-MM-dd", require = false)
	@DateDataType
	private  Date operatingDate; 	 
    
	/**
	 * 操作类型
	 */ 
	@StaticDataCell(rowIndex = 3, cellIndex = 3, title = "操作类型")
	@DynamicRowDataCell(cellIndex = 3,  title = "操作类型", require = false)
	@DynamicCellDataCell(rowIndex = 3,  title = "操作类型", require = false)
	private  String type; 	 
    
	/**
	 * 登录IP
	 */ 
	@StaticDataCell(rowIndex = 4, cellIndex = 4, title = "登录IP")
	@DynamicRowDataCell(cellIndex = 4,  title = "登录IP", require = false)
	@DynamicCellDataCell(rowIndex = 4,  title = "登录IP", require = false)
	private  String ip; 	 
    
	/**
	 * 登录主机
	 */ 
	@StaticDataCell(rowIndex = 5, cellIndex = 5, title = "登录主机")
	@DynamicRowDataCell(cellIndex = 5,  title = "登录主机", require = false)
	@DynamicCellDataCell(rowIndex = 5,  title = "登录主机", require = false)
	private  String host; 	 
    
	/**
	 * 登录端口
	 */ 
	@StaticDataCell(rowIndex = 6, cellIndex = 6, title = "登录端口")
	@DynamicRowDataCell(cellIndex = 6,  title = "登录端口", require = false)
	@DynamicCellDataCell(rowIndex = 6,  title = "登录端口", require = false)
	private  String port; 	 
    
	/**
	 * 操作模块
	 */ 
	@StaticDataCell(rowIndex = 7, cellIndex = 7, title = "操作模块")
	@DynamicRowDataCell(cellIndex = 7,  title = "操作模块", require = false)
	@DynamicCellDataCell(rowIndex = 7,  title = "操作模块", require = false)
	private  String module; 	 
    
	/**
	 * 操作主键
	 */ 
	@StaticDataCell(rowIndex = 8, cellIndex = 8, title = "操作主键")
	@DynamicRowDataCell(cellIndex = 8,  title = "操作主键", require = false)
	@DynamicCellDataCell(rowIndex = 8,  title = "操作主键", require = false)
	@IntegerDataType(msg = "必须为整数类型")
	private  long moduleId; 	 
    
	/**
	 * 操作信息
	 */ 
	@StaticDataCell(rowIndex = 9, cellIndex = 9, title = "操作信息")
	@DynamicRowDataCell(cellIndex = 9,  title = "操作信息", require = false)
	@DynamicCellDataCell(rowIndex = 9,  title = "操作信息", require = false)
	private  String operatingInfo; 	 
    

	public OperatingLog() {
		super();
	}
	

	public OperatingLog(long userId, Date operatingDate, String type, String ip, String host, String port, String module, long moduleId, String operatingInfo) {
		super();
		this.userId = userId;
		this.operatingDate = operatingDate;
		this.type = type;
		this.ip = ip;
		this.host = host;
		this.port = port;
		this.module = module;
		this.moduleId = moduleId;
		this.operatingInfo = operatingInfo;
	}


	/**
	 * @return the  userId
	 */
	public  long getUserId() {
		return  userId;
	}

	/**
	 * @param  userId
	 *            the  userId to set
	 */
	public void setUserId( long  userId) {
		this. userId =  userId;
	}
	
	/**
	 * @return the  operatingDate
	 */
	public  Date getOperatingDate() {
		return  operatingDate;
	}

	/**
	 * @param  operatingDate
	 *            the  operatingDate to set
	 */
	public void setOperatingDate( Date  operatingDate) {
		this. operatingDate =  operatingDate;
	}
	
	/**
	 * @return the  type
	 */
	public  String getType() {
		return  type;
	}

	/**
	 * @param  type
	 *            the  type to set
	 */
	public void setType( String  type) {
		this. type =  type;
	}
	
	/**
	 * @return the  ip
	 */
	public  String getIp() {
		return  ip;
	}

	/**
	 * @param  ip
	 *            the  ip to set
	 */
	public void setIp( String  ip) {
		this. ip =  ip;
	}
	
	/**
	 * @return the  host
	 */
	public  String getHost() {
		return  host;
	}

	/**
	 * @param  host
	 *            the  host to set
	 */
	public void setHost( String  host) {
		this. host =  host;
	}
	
	/**
	 * @return the  port
	 */
	public  String getPort() {
		return  port;
	}

	/**
	 * @param  port
	 *            the  port to set
	 */
	public void setPort( String  port) {
		this. port =  port;
	}
	
	/**
	 * @return the  module
	 */
	public  String getModule() {
		return  module;
	}

	/**
	 * @param  module
	 *            the  module to set
	 */
	public void setModule( String  module) {
		this. module =  module;
	}
	
	/**
	 * @return the  moduleId
	 */
	public  long getModuleId() {
		return  moduleId;
	}

	/**
	 * @param  moduleId
	 *            the  moduleId to set
	 */
	public void setModuleId( long  moduleId) {
		this. moduleId =  moduleId;
	}
	
	/**
	 * @return the  operatingInfo
	 */
	public  String getOperatingInfo() {
		return  operatingInfo;
	}

	/**
	 * @param  operatingInfo
	 *            the  operatingInfo to set
	 */
	public void setOperatingInfo( String  operatingInfo) {
		this. operatingInfo =  operatingInfo;
	}
	
}
